Make sure turning off warnings in toplevel attributes works

  $ . ./setup.sh
  $ cat > dune-project <<EOF
  > (lang dune 3.9)
  > (using melange 0.1)
  > EOF

  $ cat > x.ml <<EOF
  > let x = 1
  > EOF
  $ touch x.mli

  $ cat > dune <<EOF
  > (melange.emit
  >  (target js-out)
  >  (emit_stdlib false))
  > EOF

  $ dune build @melange
  File "x.ml", line 1, characters 4-5:
  1 | let x = 1
          ^
  Error (warning 32 [unused-value-declaration]): unused value x.
  [1]

  $ cat _build/default/js-out/x.js
  cat: _build/default/js-out/x.js: No such file or directory
  [1]

  $ cat > x.ml <<EOF
  > [@@@warning "-32"]
  > let x = 1
  > EOF

  $ dune build @melange

  $ cat _build/default/js-out/x.js
  // Generated by Melange
  /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */

Turning on works

  $ cat > x.ml <<EOF
  > [@@@warning "-32"]
  > let x = 1
  > [@@@warning "+32"]
  > let y = 1
  > EOF

  $ dune build @melange
  File "x.ml", line 4, characters 4-5:
  4 | let y = 1
          ^
  Error (warning 32 [unused-value-declaration]): unused value y.
  [1]

